package com.zp.business.api.prescription;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zp.common.core.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 处方子prescription_item对象 prescription_item
 *
 * @author zhang peng
 * @ date 2024-03-22
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("prescription_item")
public class PrescriptionItem extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "item_id")
    private String itemId;

    /**
     * 组号
     */
    private Integer groupNumber;

    /**
     * 处方申请序号
     */
    private String applyId;

    /**
     * 价表id
     */
    private String priceId;

    /**
     * 库存表ID
     */
    private String stockId;

    /**
     * 药品名称
     */
    private String drugName;

    /**
     * 药品名称编码
     */
    private String drugCode;

    /**
     * 单位
     */
    private String minUnits;

    /**
     * 包装单位
     */
    private String packageUnits;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 规格
     */
    private String minSpec;

    /**
     * 包装规格
     */
    private String packageSpec;

    /**
     * 厂家标识
     */
    private String firmId;

    /**
     * 商家名称
     */
    private String firmName;

    /**
     * 单次用量
     */
    private BigDecimal singleDosage;

    /**
     * 用量单位
     */
    private String singleUnit;

    /**
     * 途径
     */
    private String channel;

    /**
     * 频次
     */
    private String performFreq;

    /**
     * 药品数量
     */
    private Integer num;

    /**
     * 次量
     */
    private Integer numSingle;

    /**
     * 网络价格
     */
    private BigDecimal networkPrice;

    /**
     * 单价
     */
    private BigDecimal price;

    /**
     * 进价
     */
    private BigDecimal tradePrice;

    /**
     * 总价
     */
    private BigDecimal sumPrice;

    /**
     * 是否皮试
     */
    private String isSkin;

    /**
     * 免皮试
     */
    private String noSkin;

    /**
     * 医保审核标识 Y审核通过 N未审核
     */
    private String verifyFlag;

    /**
     * 皮试结果
     */
    private String skinResult;

    /**
     * 剂数
     */
    private Integer repetition;

    /**
     * 用药天数
     */
    private Integer abidance;

    /**
     * 机构ID
     */
    private String orgId;

    /**
     * 标志
     */
//    @TableLogic
    private String delFlag;
    /**
     * 备注信息
     */
    private String remarks;
    /**
     * 确认人
     */
    private String skinConfirmBy;
    /**
     * 皮试人
     */
    private String skinPerson;
    /**
     * 确认时间
     */
    private Date confirmTime;
    /**
     * 皮试时间
     */
    private Date skinTime;
    /**
     * 剂量单位计量
     */
    private BigDecimal doseUnitsMetering;
    /**
     * executive_department
     */
    private String executiveDepartment;
    /**
     * 皮试处方子表id
     */
    private String skinId;
    /**
     * 皮试详细
     */
    private String skinResults;
    /**
     * 滴速
     */
    private String dripSpeed;
    /**
     * 批次
     */
    private String batchNo;

    private String identicalInfoId;
    /**
     * 合理用药审查返回状态
     */
    private Integer warnCode;
    /**
     * 熔断后异常信息
     */
    @TableField(exist = false)
    private String exceptionCode;

    public void initEntity () {
        this.delFlag = "0";
    }

    private String drugInfoId;

    /**
     * 药品大小包装：1(小包装)；2(大包装)
     */
    private String packSize;

    /**
     * 包装数量
     */
    private Integer packageNum;

    /**
     * 收费标志
     */
    private String chargeFlag;


    /**
     * 发药标志
     */
    private String confirmFlag;

}
